import request from './request'

/**
 * 获取当前用户信息
 * @returns {Promise}
 */
export function getUserInfo() {
  return request({
    url: '/user/info',
    method: 'get'
  })
}

/**
 * 分页查询用户列表（管理员）
 * @param {Object} params
 * @param {number} params.pageNum - 页码
 * @param {number} params.pageSize - 每页大小
 * @returns {Promise}
 */
export function getUserList(params) {
  return request({
    url: '/user/list',
    method: 'get',
    params
  })
}

/**
 * 更新用户信息
 * @param {Object} data - 用户信息
 * @returns {Promise}
 */
export function updateUser(data) {
  return request({
    url: '/user/update',
    method: 'put',
    data
  })
}

/**
 * 删除用户
 * @param {number} id - 用户ID
 * @returns {Promise}
 */
export function deleteUser(id) {
  return request({
    url: `/user/${id}`,
    method: 'delete'
  })
}

/**
 * 获取当前用户角色
 * @returns {Promise}
 */
export function getCurrentUserRoles() {
  return request({
    url: '/user/roles',
    method: 'get'
  })
}

/**
 * 获取用户中心统计数据
 * @returns {Promise}
 */
export function getUserStatistics() {
  return request({
    url: '/user/center/statistics',
    method: 'get'
  })
}

/**
 * 获取我的宠物列表
 * @returns {Promise}
 */
export function getMyPets() {
  return request({
    url: '/user/center/my-pets',
    method: 'get'
  })
}

/**
 * 更新用户资料
 * @param {Object} data - 用户资料
 * @returns {Promise}
 */
export function updateProfile(data) {
  return request({
    url: '/user/profile',
    method: 'put',
    data
  })
}
